package edu.xaut.bookingsys.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

/**
 * \
 * InfoCourse
 * 课程信息表
 * 老师登记的课程信息，由老师登计添加或删除，每个老师只允许添加自己的课程，课程与班级是强相关的
 *
 * @FIXME 字段里是否需要在此添加老师的信息？在InfoClass中其实已存在。
 * @Todo isPlan 这个问题比较麻烦，初始情况全是false，教师不可设置
 * <p>
 * 根据TeacherId，先查找老师所添加的ClassId,再根据ClassId查找该班下所有CourseId
 */
@Data
@TableName("InfoCourse")
public class InfoCourse {

    @TableId(value = "courseId", type = IdType.AUTO)
    private Integer courseId;//课程信息id，@FixME 教务有单独的id吗？不知道，当前先以自增的id为主
    @TableField("courseName")
    private String courseName; // 课程名
    @TableField("className")
    private String className; // 班级
    @TableField("classNumber")
    private int classNumber;
    @TableField("courseType")
    private EnumCourse courseType; // 课程是
    @TableField("isTask")
    private Integer isTask; // 是否教务计划
    @TableField("environmentNeed")
    private String environmentNeed; // 计算机软件环境需求
    @TableField("teacherId")
    private String teacherId; //关联的老师信息
    @TableField(exist = false)
    private InfoTeacher infoTeacher;

}
